بهینهسازی مسیرها و استفاده از منابع شبکه برای بهبود عملکرد کلی شبکه.
زبانهای سطح پایین (Low-level languages) به زبانهای برنامهنویسی اطلاق میشود که به سختافزار کامپیوتر نزدیکتر از زبانهای سطح بالا هستند. این زبانها معمولاً به نوعی با دستورالعملهای ماشین یا سیستمهای عملیاتی ارتباط دارند و به برنامهنویسان این امکان را میدهند که کنترل بیشتری بر منابع سیستم داشته باشند.
در واقع، زبانهای سطح پایین در مقایسه با زبانهای سطح بالا، نسبت به سختافزار و معماری سیستم وابستگی بیشتری دارند. برنامههای نوشته شده در زبانهای سطح پایین معمولاً سریعتر و کارآمدتر هستند زیرا مستقیماً با منابع سیستم در تعاملند و هیچ واسطهای میان برنامه و سختافزار وجود ندارد.
زبانهای سطح پایین به دو دسته عمده تقسیم میشوند: زبان ماشین و زبان اسمبلی.
زبان ماشین اولین سطح از زبانهای برنامهنویسی است که مستقیماً با کدهای دودویی یا بیتها که توسط سختافزار پردازش میشود، ارتباط دارد. کدهای ماشین به طور مستقیم توسط پردازنده اجرا میشوند و هیچ نیازی به ترجمه یا تفسیر ندارند. این زبان معمولاً غیرقابل خواندن است و تنها پردازندهها قادر به درک آن هستند.
زبان اسمبلی زبان سطح پایین دیگری است که به طور مستقیم با زبان ماشین ارتباط دارد اما از دستورالعملهای نمادین استفاده میکند تا برنامهنویسان راحتتر کد بنویسند. دستورالعملهای زبان اسمبلی با دستورالعملهای ماشین یکی به یکی تطابق دارند، اما به جای استفاده از کدهای دودویی، از نمادها و کلمات استفاده میشود که برای انسانها قابل فهمتر است.
برنامهنویسان با استفاده از زبانهای سطح پایین میتوانند به بهینهسازیهای خاصی بپردازند که در زبانهای سطح بالا امکانپذیر نیست. این به آن معناست که زبانهای سطح پایین قدرت بیشتری در تخصیص منابع سیستم دارند و برنامهنویسان میتوانند کنترل دقیقی بر نحوه اجرای برنامهها داشته باشند.
با این حال، زبانهای سطح پایین دارای معایبی نیز هستند. یکی از مشکلات اصلی این است که نوشتن و نگهداری کد در این زبانها بسیار دشوارتر از زبانهای سطح بالا است. همچنین، کدهای نوشته شده در زبانهای سطح پایین معمولاً به زمان بیشتری برای توسعه نیاز دارند و کدها میتوانند پیچیدهتر و باگهای بیشتری داشته باشند.
اگرچه زبانهای سطح پایین به دلیل قدرت بالای کنترل منابع و سرعت بیشتر در برخی از برنامههای حساس به کار میروند، اما استفاده از زبانهای سطح بالا برای برنامهنویسیهای معمولی ترجیح داده میشود. برای اطلاعات بیشتر، میتوانید از سایت saeidsafaei.ir و اسلایدهای محمد سعید صفایی بهرهبرداری کنید.
در این مبحث، به مقدمهای بر برنامهنویسی پرداخته و مفاهیم اساسی آن شامل تعریف برنامهنویسی، اهمیت برنامهنویسی، روشهای ترجمه کد، انواع زبانهای برنامهنویسی، و مهارتها و محیطهای برنامهنویسی بررسی میشود. هدف این جلسه، آشنایی با اصول پایهای برنامهنویسی و درک نحوه انتخاب زبان و محیط مناسب برای نوشتن برنامههای کاربردی است.
بهینهسازی مسیرها و استفاده از منابع شبکه برای بهبود عملکرد کلی شبکه.
تابع بخشی از کد است که یک کار خاص را انجام میدهد و میتواند توسط برنامهنویس برای انجام وظایف مختلفی در برنامه فراخوانی شود.
مفهوم VLANای که ترافیک به آن هدایت میشود اما هیچ دستگاه یا موجودیتی در آن وجود ندارد تا ترافیک را پردازش کند.
رایانههای هیبریدی که ترکیبی از کامپیوترهای آنالوگ و دیجیتال هستند و توانایی پردازش دادههای پیوسته و گسسته را دارند.
دروازه منطقی AND که زمانی خروجی 1 میدهد که ورودیهای آن هر دو 1 باشند.
سایههای دیجیتال به ردپای دیجیتالی که افراد و دستگاهها در فضای مجازی از خود به جا میگذارند گفته میشود.
روش ارتباطی یک به همه که در آن یک دستگاه دادهها را به تمام دستگاههای شبکه ارسال میکند.
حافظه محلی است که دادهها و دستورات برنامهها در آن ذخیره میشود. این حافظه میتواند به صورت حافظه موقت (RAM) یا دائمی (هارد دیسک) باشد.
توابع ساختهشده توسط کاربر توابعی هستند که برنامهنویسان برای انجام کارهای خاص خود میسازند. این توابع میتوانند به صورت مجزا از برنامه فراخوانی شوند.
فرایند به هم پیوستن یا به هم رسیدن دو یا چند مولفه برای تبادل دادهها در شبکه.
تابع بازگشتی تابعی است که خود را در درون بدنه خود فراخوانی میکند. این نوع توابع معمولاً برای مسائل بازگشتی مانند محاسبه فاکتوریل یا دنباله فیبوناچی استفاده میشود.
پارامترها مقادیری هستند که به یک تابع داده میشوند و به عنوان ورودی تابع عمل میکنند.
پردازش سیگنال دیجیتال (DSP) به استفاده از الگوریتمها برای تجزیه و تحلیل و پردازش سیگنالهای دیجیتال برای کاربردهای مختلف اطلاق میشود.
دید ماشین به فناوریهایی اطلاق میشود که به دستگاهها این امکان را میدهند تا از طریق دوربینها و حسگرها محیط خود را درک کنند.
سیستم عددی دهدهی است که در آن از ارقام 0 تا 9 برای نمایش اعداد استفاده میشود.
از ادغام دو یا چند توپولوژی شبکه متفاوت با یکدیگر توپولوژی ترکیبی به وجود میآید.
شبکههایی که افراد و سازمانها را به هم متصل میکنند و امکان اشتراکگذاری اطلاعات را فراهم میآورند.
رویکردی است که به افراد کمک میکند تا مشکلات را نه به صورت جزئی، بلکه به عنوان بخشی از یک سیستم بزرگتر در نظر بگیرند. این نوع تفکر به ارزیابی ارتباطات میان اجزای مختلف یک سیستم کمک میکند.
الگوریتمی که برای یافتن کوتاهترین مسیر از یک گره به سایر گرهها در گرافها استفاده میشود و در پروتکلهای مسیریابی Link State کاربرد دارد.
الگوریتم مرتبسازی انتخابی بر اساس انتخاب کوچکترین یا بزرگترین عنصر در هر مرحله و جابهجایی آن با مکان مناسب عمل میکند.
کلاس در برنامهنویسی شیگرا قالبی است که برای ایجاد اشیاء استفاده میشود. هر کلاس میتواند ویژگیها و متدهایی را تعریف کند.
حافظههای دینامیک (DRAM) که نیاز به رفرش مداوم دارند، برای حافظههای اصلی به کار میروند. این نوع حافظهها ظرفیت بیشتری نسبت به SRAM دارند.
سیستمهای فیزیکی-مجازی به سیستمهایی اطلاق میشود که از ترکیب نرمافزار و سختافزار برای کنترل و تعامل با دنیای فیزیکی استفاده میکنند.
سیستمهایی هستند که قادرند دادهها را پردازش کرده و بر اساس آنها تصمیمگیری نمایند، به گونهای که شبیه به تفکر انسان عمل میکنند.
شبکههای هوشمند به سیستمهای برقرسانی گفته میشود که از فناوریهای دیجیتال برای نظارت و بهینهسازی مصرف انرژی استفاده میکنند.
سیستمهای چندعاملی (MAS) به استفاده از چندین عامل مستقل برای انجام وظایف و حل مسائل مشترک اطلاق میشود.
امنیت نوع به توانایی یک زبان برنامهنویسی برای جلوگیری از ارورهایی اطلاق میشود که ناشی از تعاملات ناسازگار میان انواع دادهها هستند.
دستگاههای پوشیدنی هوشمند به دستگاههایی اطلاق میشود که بهطور مداوم اطلاعات را از بدن فرد جمعآوری و تجزیه و تحلیل میکنند.
شبکههای عصبی شناختی به شبکههایی اطلاق میشود که سعی در شبیهسازی مغز انسان برای انجام پردازشهای پیچیده دارند.
Hyperledger یک پلتفرم منبع باز برای توسعه راهحلهای بلاکچین است که توسط Linux Foundation حمایت میشود.
سلسله مراتب حافظه به توزیع انواع مختلف حافظه بر اساس اندازه، سرعت دسترسی و هزینه مربوط میشود. در این سلسله مراتب، حافظههای سریعتر و گرانتر در نزدیکترین سطح به پردازنده قرار دارند، مانند ثباتها (Registers)، حافظه نهان (Cache)، و سپس حافظه اصلی (RAM).
یادگیری تقویتی عمیق یک نوع یادگیری ماشین است که از بازخوردهای مثبت و منفی برای آموزش مدلها استفاده میکند.
بلاکچین 2.0 به نسخهای پیشرفته از بلاکچین گفته میشود که ویژگیهایی مانند قراردادهای هوشمند و مقیاسپذیری بهتر را ارائه میدهد.
مدتزمانی که اگر طی آن هیچ پیام Hello از یک روتر دریافت نشود، آن روتر به عنوان همسایه مرده فرض میشود.
فایروال سیستم امنیتی است که دسترسی غیرمجاز به شبکههای کامپیوتری را کنترل میکند.